#ifndef OPEDB_H
#define OPEDB_H

#include <QObject>
#include<QSqlDatabase>
#include<QSqlQuery>
#include<QStringList>
class OpeDB : public QObject
{
    Q_OBJECT
public:
    explicit OpeDB(QObject *parent = nullptr);
    static OpeDB& getInstance();
    void init();
    ~OpeDB();

    //当收到客户端的注册请求时，去数据库中修改数据表
    bool handleRegist(const char *name,const char * pwd);
    //当收到客户端的登录请求时，去数据库中修改数据表
    bool handleLogin(const char *name,const char * pwd);
    //当有客户端下线时，修改数据库中用户的在线状态
    void handleOffline(const char* name);
    //查询所有的在线用户（online=1)
    QStringList handleAllOnline();
    //查找用户名
    int handleSearchUsr(const char* name);
    //添加好友
    int handleAddFriend(const char* pername,const char* name);
    //刷新好友列表
    QStringList handleFlushFriend(const char* name);
    bool handleDelFriend(const char* name,const char* friendName);



signals:
private:
    QSqlDatabase m_db;  //连接数据库

};

#endif // OPEDB_H
